SML=/usr/local/smlnj-110.72
CHAP=chap10
ARCH=x86-darwin

compile :	
		$(SML)/bin/ml-build sources.cm Main.main

test :		xlcheck

xlcheck :	
		-$(RM) -rf xlc
		/bin/mkdir xlc
		-( for i in ../../testcases/*.tig ;  \
		   do           \
			$(SML)/bin/sml @SMLload=sources                 \
				       -u                               \
				       $$i                              \
				       > xlc/`basename $$i .tig`.ast    \
				       2> xlc/`basename $$i .tig`.err ; \
			$(SML)/bin/sml @SMLload=sources                 \
				       -i                               \
				       $$i                              \
				       > xlc/`basename $$i .tig`.insn   \
				       2> xlc/`basename $$i .tig`.err ; \
			$(SML)/bin/sml @SMLload=sources                 \
				       -g                               \
				       $$i                              \
				       > xlc/`basename $$i .tig`.a      \
				       2> xlc/`basename $$i .tig`.err ; \
			$(SML)/bin/sml @SMLload=sources                 \
				       -f                               \
				       $$i                              \
				       > xlc/`basename $$i .tig`.flow   \
				       2> xlc/`basename $$i .tig`.err ; \
			$(SML)/bin/sml @SMLload=sources                 \
				       -l                               \
				       $$i                              \
				       > xlc/`basename $$i .tig`.live   \
				       2> xlc/`basename $$i .tig`.err ; \
			$(SML)/bin/sml @SMLload=sources                 \
				       -r                               \
				       $$i                              \
				       > xlc/`basename $$i .tig`.alloc  \
				       2> xlc/`basename $$i .tig`.err ; \
		   done )

clean :
		-$(RM) -rf sources.$(ARCH) xlc *~ tiger.grm.* tiger.lex.* .cm